As described in Ser. No. 10/406,915, supra, functional and strategic advantages for commercial enterprises can be achieved by using an integrated business system comprising ERP (Enterprise Resource Planning), CRM (Customer Relationship Management), and other business capabilities accessible using a thin-client, browser-based user interface. Also as described in Ser. No. 10/406,915, these advantages can be enhanced where the user interface is configured to concisely communicate real-time business information by displaying a plurality of portlet windows within a browser window, the plurality of portlet windows being selected and arranged according to a customizable user profile for each user. By way of example, the plurality of portlet windows can include: business reporting portlets for displaying up-to-date business results; calendar application portlets; task list application portlets; employee/customer contact list application portlets; search portlets; and generally any of a variety of combinations of business reporting and/or application portlets dedicated to different ERP, CRM, and other business capabilities. In one or more of the preferred embodiments described in Ser. No. 10/406,915, the browser-based user interface is similar to an “executive dashboard” feature of the NetSuite™ service offered by NetSuite, Inc. (formerly NetLedger, Inc.) of San Mateo, Calif.
In addition to optimizing accessibility and display of up-to-date business information in the browser-based user interface, it has been found that optimizing the experience of inputting and editing the business information can drastically increase the usefulness, desirability, and marketability of the web-based integrated business system. In an environment where so much business power is concisely presented to the eyes and fingertips of the business user, it has been found that even subtle differences in the nature of the keystrokes, mouse movements, and mouse clicks that input or edit the business information can create large differences in user appeal toward the web-based integrated business system. In a related aspect, it is desirable to achieve an optimal balance among (i) prompt data permanence, i.e., prompt transfer of new data from the browser to the server, (ii) effective client-side go-back features for easy correction of recent inputs, and (iii) efficient network traffic flow. In another related aspect, it is desirable to achieve an efficient balance between (i) easy user changeability of many database entries relating to a particular displayed record, and (ii) achieving a user display that is not overcrowded with information.
As used herein, the term web page refers to a generally self-contained (except for cached data) body of content and commands generated by a web server and transferred over a network to a web browser for rendering and execution, the body of content and commands being sent responsive to a page request received from the web browser. The page request can alternatively be termed a page commit or a page refresh. As used herein, the term web page display refers to a rendering of the web page by the browser for visual (or audiovisual) presentation to the user according to the content and commands contained in the web page. A web page may comprise one or more frames which, as used herein, comprise distinct bodies of content and commands generated by a web server and are transferred over a network to a web browser responsive to a page request and/or a frame request, renderings of which may be simultaneously displayed by a browser.
As used herein, the term record refers to a representation of two or more related data elements as would be kept, for example, as part of a relational database. The data elements can alternatively be termed cells. By way of example, an employee directory listing may comprise one record per employee, each record comprising multiple data elements or cells including first name, last name, telephone extension, mail stop, and e-mail address. As used herein the term table refers to a listing of one or more such records.
In U.S. 2003/0001885A1, published Jan. 2, 2003, entitled “Method of Generating a Dynamic Editable Table in a Web Page,” a web page comprising JavaScript implementing “dynamic interactive operations” on a table is discussed, including “allowing the client to perform various editing and statistical operations on the dynamic editable table” and “simultaneously” storing the corresponding data on the server. An article entitled “Isomorphic Broadens Rich Web Client Appeal” by Charles Babcock, The Foggy Mountain Report, No. 19 (Jan. 8, 2003), discusses “inline editing of databound grids (double-click in a cell in the Instant Data Application example to edit).” However, it is believed that neither of these references proposes the optimized user input and editing experience described herein that takes into account special needs and tendencies of the business user as they are presented with a browser window containing a wide variety and range of concise ERP, CRM, and other business information.
Accordingly, it would be desirable to provide a browser-based user interface for a web-based integrated business information system that facilitates efficient user input and/or editing of business data.
It would be further desirable to provide such a browser-based user interface that also facilitates efficient user perception of real-time business information.
It would be still further desirable to provide such a browser-based user interface that allows business executives to perceive, at a glance, overviews of key business performance metrics corresponding to information stored in the integrated business information system.
It would be even further desirable to provide such a browser-based user interface that also achieves an optimal balance among prompt data permanence, effective client-side go-back features, and efficient network traffic flow.
It would be still further desirable to provide such a browser-based user interface that is not dependent on runtime downloads such as the Java Virtual Machine, while also being sufficiently feature-rich to enable optimized data input and/or editing features.
It would be still further desirable to provide such a browser-based user interface that also achieves an efficient balance between (i) easy user changeability of many database entries relating to a particular displayed record, and (ii) a user display that is not overcrowded with information.